#pragma once

#include "Stone.h"
#include "Board.h"

using namespace std;

class Player {
public:
    static const int MIND_NONE = 0;
    static const int MIND_LOOSER = -1;
    static const int MIND_WINNER = 1;
private:
    string mName;
//    OnPlayerListener mListener;
protected:
    int mColor;
    Board* mBoard;
    int mMind;

public:
    Player(string name);
    virtual ~Player();
//    void setOnPlayerListener(OnPlayerListener listener);
    void setColor(int color);
    int getColor();
    virtual void setBoard(Board* board);
    virtual Cell* next();
//    Thread next(final NextListener listener);
    string toString();
    int hearMind();
private:
};
